home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 2001 November / macformat-109.iso / Demos / Alice Demo / demo / pak0.pk3 / global / alice_torso.st < prev    next >
Encoding:
Text File  |  2000-11-20  |  14.1 KB  |  946 lines

  1. state STAND
  2. {
  3.    camera behind
  4.    movetype legs
  5.  
  6.     torso
  7.     {
  8.         burn    : ON_FIRE
  9.     }
  10.  
  11.     states
  12.     {
  13.         FROZEN        : FROZEN
  14.         HELD            : IS_GRABBED
  15.         CHESS_PUZZLE    : LEGS "CHESS_PUZZLE"
  16.  
  17.         KILLED        : KILLED
  18.         PAIN            : PAIN
  19.  
  20.         GRASSHOPPER        : TEA
  21.  
  22.         RAISE_WEAPON    : NEW_WEAPON
  23.         PUTAWAY_RIGHT    : PUTAWAYRIGHT
  24.  
  25.         OUT_OF_MANA        : ATTACKRIGHT !IS_CURRENT_WEAPON_MANA_OK "primary"
  26.         OUT_OF_MANA        : ATTACK_ALTERNATE !IS_CURRENT_WEAPON_MANA_OK "alternate"
  27.  
  28.         ATTACK_START        : ATTACKRIGHT
  29.         ATTACK_START_ALTERNATE  : ATTACK_ALTERNATE
  30.  
  31.         CLIMB_32        : ONGROUND !IN_WATER "2" +FORWARD !USE LEDGE_HEIGHT "31" "36"
  32.         CLIMB_48        : ONGROUND !IN_WATER "2" +FORWARD !USE LEDGE_HEIGHT "40" "52"
  33.         CLIMB_64        : ONGROUND !IN_WATER "2" +FORWARD !USE LEDGE_HEIGHT "60" "68"
  34.  
  35.         ROPE_HANG         : !ONGROUND TOUCHED_ROPE
  36.         ROPE_USE        : ONGROUND USE TOUCHED_ROPE
  37.  
  38.           HANG              : ONGROUND !IN_WATER "2" +FORWARD USE !CROUCH !BACKWARD !STRAFE_RIGHT !STRAFE_LEFT CAN_GRAB_LEDGE CAN_HANG
  39.           HANG              : !ONGROUND !IN_WATER "2" CAN_GRAB_LEDGE CAN_HANG
  40.  
  41.         USE            : USE AT_DOOR        
  42.         USE_USEOBJECT    : USE AT_USEOBJECT
  43.  
  44.         IDLE_CAMERA        : LEGS "STAND_IDLE_PLAY" !VANGLECHANGE
  45.  
  46.         SWIM             : IN_WATER "2"
  47.         STAND_RESET        : -ON_FIRE
  48.     }
  49. }
  50.  
  51. state STAND_RESET
  52. {
  53.     states
  54.     {
  55.         STAND    : default
  56.     }
  57. }
  58.  
  59. state OUT_OF_MANA
  60. {
  61.    camera behind
  62.    movetype legs
  63.  
  64.     torso
  65.     {
  66.         switch_to_knife : default
  67.     }
  68.  
  69.     states
  70.     {
  71.         RAISE_WEAPON    : NEW_WEAPON
  72.         PUTAWAY_RIGHT    : PUTAWAYRIGHT
  73.         STAND            : ANIMDONE_TORSO
  74.     }
  75. }
  76.  
  77. state CHESS_PUZZLE
  78. {
  79. camera behind
  80. movetype legs
  81.  
  82.     states
  83.     {
  84.         STAND    : !LEGS "CHESS_PUZZLE" !LEGS "CHESS_MOVE"
  85.     }
  86. }
  87.  
  88. state IDLE_CAMERA
  89. {
  90. //camera bulletcam 80 -50 20 1 linear radial target 0 0 5
  91. camera frontright
  92.  
  93.     states
  94.     {
  95.         RAISE_WEAPON    : NEW_WEAPON
  96.         PUTAWAY_RIGHT    : PUTAWAYRIGHT
  97.         GRASSHOPPER        : TEA
  98.  
  99.         ATTACK_START        : ATTACKRIGHT IS_CURRENT_WEAPON_READY_TO_FIRE "primary"
  100.         ATTACK_START_ALTERNATE  : ATTACK_ALTERNATE IS_CURRENT_WEAPON_READY_TO_FIRE "alternate"
  101.  
  102.         STAND    : !LEGS "STAND_IDLE_PLAY" !LEGS "STAND_IDLE"
  103.     }
  104. }
  105.  
  106. state SWIM
  107. {
  108.    //camera bulletcam -80 0 20 0.9 damped radial viewtarget 0 0 20
  109.    camera swim_behind
  110.    movetype legs
  111.  
  112.     states
  113.     {
  114.         FROZEN        : FROZEN
  115.         HELD            : IS_GRABBED
  116.  
  117.         KILLED        : KILLED
  118.         PAIN            : PAIN
  119.  
  120.         RAISE_WEAPON    : NEW_WEAPON
  121.         PUTAWAY_RIGHT    : PUTAWAYRIGHT
  122.  
  123.         ATTACK_START        : ATTACKRIGHT IS_CURRENT_WEAPON_READY_TO_FIRE "primary"
  124.         ATTACK_START_ALTERNATE  : ATTACK_ALTERNATE IS_CURRENT_WEAPON_READY_TO_FIRE "alternate"
  125.         USE            : USE AT_DOOR        
  126.         USE_USEOBJECT    : USE AT_USEOBJECT
  127.  
  128.         STAND : !IN_WATER "2"
  129.     }
  130. }
  131.  
  132. state ATTACK_START
  133. {
  134.     entrycommands
  135.     {
  136.         setlastfiredtime
  137.     }
  138.     states
  139.     {
  140.         GRASSHOPPER        : TEA
  141.         ATTACK_RIGHT    : default
  142.     }
  143. }
  144.  
  145. state ATTACK_START_ALTERNATE
  146. {
  147.     entrycommands
  148.     {
  149.         setlastfiredtime
  150.     }
  151.     states
  152.     {
  153.         GRASSHOPPER        : TEA
  154.         ATTACK_ALTERNATE    :    default
  155.     }
  156. }
  157.  
  158. state ATTACK_RIGHT
  159. {
  160.     movetype legs
  161.  
  162.     torso
  163.     {
  164.         knife_att_1_prim : IS_WEAPON_READY_TO_FIRE "Knife"
  165.         mallet_att_1_prim : IS_WEAPON_READY_TO_FIRE "mallet"
  166.         cards_att_prim : IS_WEAPON_READY_TO_FIRE "cards"
  167.         jbomb_att_2_prim : IS_WEAPON_READY_TO_FIRE "jackbomb"
  168.         weapon_not_ready : default
  169.     }
  170.  
  171.     states
  172.     {
  173.         GRASSHOPPER     : TEA
  174.         FROZEN     : FROZEN
  175.         HELD         : IS_GRABBED
  176.         KILLED      : KILLED
  177.         PAIN         : ANIMDONE_TORSO PAIN
  178.         STAND          : ANIMDONE_TORSO !IS_CURRENT_WEAPON_READY_TO_FIRE "primary"
  179.         STAND      : ANIMDONE_TORSO
  180.     }
  181. }
  182.  
  183. state ATTACK_ALTERNATE
  184. {
  185.    movetype legs
  186.     torso
  187.     {
  188.         knife_att_1_alt : IS_WEAPON_READY_TO_FIRE "Knife"
  189.         mallet_att_3_alt : IS_WEAPON_READY_TO_FIRE "mallet"
  190.         cards_att_1_alt : IS_WEAPON_READY_TO_FIRE "cards"
  191.         jbomb_att_2_alt : IS_WEAPON_READY_TO_FIRE "jackbomb"
  192.         weapon_not_ready : default
  193.     }
  194.  
  195.     states
  196.     {
  197.         GRASSHOPPER        : TEA
  198.         FROZEN        : FROZEN
  199.         HELD            : IS_GRABBED
  200.         KILLED         : KILLED
  201.         PAIN            : ANIMDONE_TORSO PAIN
  202.         STAND            : ANIMDONE_TORSO
  203.     }
  204. }
  205.  
  206. state RAISE_WEAPON
  207. {
  208.    movetype legs
  209.  
  210.     entrycommands
  211.     {
  212.         setlastfiredtime
  213.     }
  214.  
  215.     torso
  216.     {
  217.         changeweapon : default
  218.     }
  219.  
  220.     states
  221.     {
  222.         KILLED : KILLED
  223.         STAND : ANIMDONE_TORSO !NEW_WEAPON
  224.     }
  225. }
  226.  
  227. state PUTAWAY_RIGHT
  228. {
  229.    movetype legs
  230.     torso
  231.     {
  232.         putawayweapon : default
  233.     }
  234.  
  235.     states
  236.     {
  237.         KILLED : KILLED
  238.         STAND : ANIMDONE_TORSO !PUTAWAYRIGHT
  239.     }
  240. }
  241.  
  242. state PAIN
  243. {
  244.     movetype legs
  245.  
  246.     torso
  247.     {
  248.     }
  249.  
  250.     states
  251.     {
  252.         KILLED     : KILLED
  253.         STAND        : ON_FIRE
  254.         SMALL_PAIN : IN_WATER
  255.         BIG_PAIN    : PAIN_THRESHOLD "23"
  256.         SMALL_PAIN     : default
  257.     }
  258.  
  259.     exitcommands
  260.     {
  261.         nextpaintime 2.5
  262.     }
  263. }
  264.  
  265. state SMALL_PAIN
  266. {
  267.     movetype legs
  268.  
  269.     torso
  270.     {
  271.         pain_water : IN_WATER
  272.         pain_front : PAIN_DIRECTION "Rear"
  273.         pain_front : PAIN_DIRECTION "Front"
  274.         pain_right : PAIN_DIRECTION "Left"
  275.         pain_left : PAIN_DIRECTION "Right"
  276.         pain_front : default
  277.     }
  278.  
  279.     states
  280.     {
  281.         KILLED : KILLED
  282.         STAND : ANIMDONE_TORSO
  283.     }
  284. }
  285.  
  286. state BIG_PAIN
  287. {
  288.     movetype anim
  289.  
  290.     legs
  291.     {
  292.         pain_knockdown : PAIN_DIRECTION "Front" CHANCE "0.5"
  293.         pain_strong_right : PAIN_DIRECTION "Left"
  294.         pain_strong_left : PAIN_DIRECTION "Right"
  295.         pain_front : default
  296.     }
  297.  
  298.     states
  299.     {
  300.         KILLED : KILLED
  301.         STAND  : ANIMDONE_LEGS
  302.     }
  303. }
  304.  
  305. /////////////////////////////////////////////
  306. // STATE for when Alice is held by an enemy
  307. /////////////////////////////////////////////
  308.  
  309. state HELD
  310. {
  311. //movetype absolute
  312. movetype legs
  313. camera topdown
  314.  
  315.     legs
  316.     {
  317.         held : default
  318.     }
  319.  
  320.     states
  321.     {
  322.         STAND : !IS_GRABBED
  323.     }
  324. }
  325.  
  326. // --------------------------------
  327.  
  328. state KILLED
  329. {
  330.     movetype anim
  331.  
  332.     states
  333.     {
  334.         DEATH_WATER : IN_WATER "2" !ON_FIRE
  335.         DEATH_GIB    : PAIN_TYPE "gib" CHANCE "0.2"
  336.         DEATH        : default
  337.     }
  338. }
  339.  
  340. state DEATH_WATER
  341. {
  342. camera bulletcam -70 0 20 0.4 damped radial viewtarget 0 0 20
  343. movetype anim
  344.  
  345.     legs
  346.     {
  347.         death_drown : default
  348.     }
  349.  
  350.     states
  351.     {
  352.         KILLED_DONE : ANIMDONE_LEGS
  353.     }
  354.  
  355.     exitcommands
  356.     {
  357.         dead
  358.     }
  359. }
  360.  
  361. state DEATH_GIB
  362. {
  363. movetype anim
  364.  
  365.     legs
  366.     {
  367.         death_gib : default
  368.     }
  369.  
  370.     states
  371.     {
  372.         KILLED_DONE : ANIMDONE_LEGS
  373.     }
  374.  
  375.     exitcommands
  376.     {
  377.         dead
  378.     }
  379. }
  380.  
  381. state DEATH
  382. {
  383. movetype anim
  384.  
  385.     legs
  386.     {
  387.         death_hideous : PAIN_THRESHOLD "40" CHANCE "0.7"
  388.         death_forward : PAIN_DIRECTION "Rear" CHANCE "0.9"
  389.         death_hard : PAIN_DIRECTION "Front" PAIN_THRESHOLD "23" CHANCE "0.8"
  390.         death_knockback : PAIN_DIRECTION "Front" CHANCE "0.8"
  391.         death_faint : CHANCE "0.6"
  392.         death_hard : CHANCE "0.8"
  393.         death_hideous : default
  394.     }
  395.  
  396.     states
  397.     {
  398.         KILLED_DONE : ANIMDONE_LEGS
  399.     }
  400.  
  401.     exitcommands
  402.     {
  403.         dead
  404.     }
  405. }
  406.  
  407. state KILLED_DONE
  408. {
  409.     movetype anim
  410. }
  411.  
  412. state KILLED_FALLING
  413. {
  414.     movetype legs
  415.  
  416.     camera topdown
  417.  
  418.     legs
  419.     {
  420.         death_falling : default
  421.     }
  422. }
  423.  
  424. ////////////////////////////////////////////////////////////////////
  425. //    HANGING     
  426. ////////////////////////////////////////////////////////////////////
  427.  
  428. state PULL_UP
  429.    {
  430.    movetype hanging
  431.  
  432.    camera topdown
  433.  
  434.    legs
  435.       {
  436.       ledge_pullup : default
  437.       }
  438.  
  439.    states
  440.       {
  441.         KILLED     : KILLED
  442.         STAND       : ANIMDONE_LEGS
  443.       }
  444.    }
  445.  
  446. state HANG
  447.    {
  448.    movetype hanging
  449.  
  450.    camera topdown
  451.  
  452.    legs
  453.       {
  454.       //hang_grab_wall    : HANG_ATWALL
  455.       hang_idle             : default
  456.       }
  457.  
  458.    states
  459.       {
  460.     KILLED     : KILLED
  461.     HANG_PAIN    : PAIN CHANCE "0.5"
  462.       HANG_IDLE   : default //ANIMDONE_LEGS
  463.       }
  464.    }
  465.  
  466. state HANG_PAIN
  467. {
  468. movetype hanging
  469. camera topdown
  470.  
  471.     legs
  472.     {
  473.         hang_pain : default
  474.     }
  475.  
  476.     states
  477.     {
  478.         HANG_IDLE    : ANIMDONE_LEGS
  479.     }
  480. }
  481.  
  482. state HANG_IDLE
  483.    {
  484.    movetype hanging
  485.  
  486.    camera topdown
  487.  
  488.    legs
  489.       {
  490.       hang_idle : default
  491.       }
  492.  
  493.    states
  494.       {
  495.         KILLED     : KILLED
  496.         HANG_PAIN    : PAIN CHANCE "0.5"
  497.         HANG_MOVE_LEFT    : STRAFE_LEFT CAN_HANG_LEFT
  498.         HANG_MOVE_RIGHT   : STRAFE_RIGHT CAN_HANG_RIGHT
  499.         PULL_UP           : +FORWARD CAN_PULLUP
  500.         HANG_LETGO        : BACKWARD
  501.         HANG_LETGO        : CROUCH
  502.       }
  503.    }
  504.  
  505. state HANG_LETGO
  506.    {
  507.    movetype legs
  508.  
  509.    legs
  510.       {
  511.       hang_idle : default
  512.       }
  513.  
  514.    states
  515.       {
  516.     KILLED     : KILLED
  517.       STAND          : ONGROUND
  518.       STAND          : ANIMDONE_LEGS
  519.       }
  520.    }
  521.  
  522. state HANG_MOVE_LEFT
  523.    {
  524.    movetype hanging
  525.  
  526.    camera topdown
  527.  
  528.    legs
  529.       {
  530.       shimmy_left : default
  531.       }
  532.  
  533.    states
  534.       {
  535.         KILLED     : KILLED
  536.         HANG_PAIN    : PAIN CHANCE "0.5"
  537.         HANG              : ANIMDONE_LEGS !STRAFE_LEFT
  538.         HANG              : ANIMDONE_LEGS !CAN_HANG_LEFT
  539.       }
  540.    }
  541.  
  542. state HANG_MOVE_RIGHT
  543.    {
  544.    movetype hanging
  545.  
  546.    camera topdown
  547.  
  548.    legs
  549.       {
  550.       shimmy_right : default
  551.       }
  552.  
  553.    states
  554.       {
  555.         KILLED     : KILLED
  556.         HANG_PAIN    : PAIN CHANCE "0.5"
  557.         HANG        : ANIMDONE_LEGS !STRAFE_RIGHT
  558.         HANG        : ANIMDONE_LEGS !CAN_HANG_RIGHT
  559.       }
  560.    }
  561.  
  562. ////////////////////////////////////////////////////////////////
  563. // Rope
  564. ////////////////////////////////////////////////////////////////
  565.  
  566. state ROPE_USE
  567. {
  568.    movetype rope_grab
  569.  
  570.    legs
  571.    {
  572.     rope_grab    : default
  573.    }
  574.  
  575.    states
  576.    {
  577.     ROPE_RELEASE    : KILLED
  578.     ROPE_RELEASE    : PAIN CHANCE "0.1"
  579.       ROPE_RELEASE      : +JUMP
  580.       ROPE_RELEASE      : !ONROPE
  581.       ROPE_HANG         : ANIMDONE_LEGS
  582.    }
  583. }
  584.  
  585. state ROPE_GRAB
  586. {
  587.    movetype rope_grab
  588.  
  589.    legs
  590.    {
  591.     rope_hang    : default
  592.    }
  593.  
  594.    states
  595.    {
  596.     ROPE_RELEASE    : KILLED
  597.     ROPE_RELEASE    : PAIN CHANCE "0.1"
  598.       ROPE_RELEASE      : +JUMP
  599.       ROPE_RELEASE      : !ONROPE
  600.       ROPE_HANG         : ANIMDONE_LEGS
  601.    }
  602. }
  603.  
  604. state ROPE_HANG
  605. {
  606.    movetype rope_grab
  607.  
  608.    legs
  609.    {
  610.     rope_hang         : default
  611.    }
  612.  
  613.    states
  614.    {
  615.     ROPE_RELEASE    : KILLED
  616.     ROPE_RELEASE    : PAIN CHANCE "0.1"
  617.       ROPE_RELEASE      : +JUMP
  618.       ROPE_RELEASE      : !ONROPE
  619.       ROPE_CLIMB_UP_RIGHT  : USE
  620.       ROPE_CLIMB_DOWN_LEFT  : CROUCH
  621.     ROPE_SWING_FORWARD : FORWARD
  622.     ROPE_SWING_BACKWARD : BACKWARD
  623.       ROPE_HANG         : ANIMDONE_LEGS
  624.    }
  625. }
  626.  
  627. state ROPE_SWING_FORWARD
  628. {
  629. movetype rope_grab
  630.  
  631.     legs
  632.     {
  633.         rope_swing_forward : default
  634.     }
  635.  
  636.     states
  637.     {
  638.         ROPE_RELEASE    : KILLED
  639.         ROPE_RELEASE    : PAIN CHANCE "0.1"
  640.           ROPE_RELEASE      : +JUMP
  641.           ROPE_RELEASE      : !ONROPE
  642.           ROPE_CLIMB_UP_RIGHT  : USE
  643.           ROPE_CLIMB_DOWN_LEFT  : CROUCH
  644.           ROPE_HANG         : ANIMDONE_LEGS
  645.     }
  646. }
  647.  
  648. state ROPE_SWING_BACKWARD
  649. {
  650. movetype rope_grab
  651.  
  652.     legs
  653.     {
  654.         rope_swing_backward : default
  655.     }
  656.  
  657.     states
  658.     {
  659.         ROPE_RELEASE    : KILLED
  660.         ROPE_RELEASE    : PAIN CHANCE "0.1"
  661.           ROPE_RELEASE      : +JUMP
  662.           ROPE_RELEASE      : !ONROPE
  663.           ROPE_CLIMB_UP_RIGHT  : USE
  664.           ROPE_CLIMB_DOWN_LEFT  : CROUCH
  665.           ROPE_HANG         : ANIMDONE_LEGS
  666.     }
  667. }
  668.  
  669. state ROPE_CLIMB_UP_RIGHT
  670. {
  671.    movetype rope_move
  672.  
  673.    legs
  674.    {
  675.       rope_climb_up_right     : default
  676.    }
  677.  
  678.    states
  679.    {
  680.     ROPE_RELEASE       : KILLED
  681.     ROPE_RELEASE       : PAIN CHANCE "0.1"
  682.       ROPE_RELEASE         : +JUMP
  683.       ROPE_RELEASE         : !ONROPE
  684.       ROPE_CLIMB_UP_LEFT   : ANIMDONE_LEGS
  685.    }
  686. }
  687.  
  688. state ROPE_CLIMB_UP_LEFT
  689. {
  690.    movetype rope_move
  691.  
  692.    legs
  693.    {
  694.       rope_climb_up_left     : default
  695.    }
  696.  
  697.    states
  698.    {
  699.     ROPE_RELEASE       : KILLED
  700.     ROPE_RELEASE       : PAIN CHANCE "0.1"
  701.       ROPE_RELEASE         : +JUMP
  702.       ROPE_RELEASE         : !ONROPE
  703.       ROPE_HANG            : ANIMDONE_LEGS
  704.    }
  705. }
  706.  
  707. state ROPE_CLIMB_DOWN_LEFT
  708. {
  709.    movetype rope_move
  710.    
  711.    legs
  712.    {
  713.       rope_climb_down_left   : default
  714.    }
  715.  
  716.    states
  717.    {
  718.     ROPE_RELEASE    : KILLED
  719.     ROPE_RELEASE    : PAIN CHANCE "0.1"
  720.       ROPE_RELEASE      : +JUMP
  721.       ROPE_RELEASE      : !ONROPE
  722.       ROPE_CLIMB_DOWN_RIGHT  : ANIMDONE_LEGS
  723.    }
  724. }
  725.  
  726. state ROPE_CLIMB_DOWN_RIGHT
  727. {
  728.    movetype rope_move
  729.    
  730.    legs
  731.    {
  732.       rope_climb_down_right   : default
  733.    }
  734.  
  735.    states
  736.    {
  737.     ROPE_RELEASE    : KILLED
  738.     ROPE_RELEASE    : PAIN CHANCE "0.1"
  739.       ROPE_RELEASE      : +JUMP
  740.       ROPE_RELEASE      : !ONROPE
  741.       ROPE_HANG         : ANIMDONE_LEGS
  742.    }
  743. }
  744.  
  745. state ROPE_RELEASE
  746. {
  747.    movetype rope_release
  748.  
  749.    legs
  750.    {
  751.     jump_falling : default
  752.    }
  753.  
  754.    states
  755.    {
  756.     KILLED    : KILLED
  757.       STAND        : !ONROPE ANIMDONE_LEGS
  758.    }
  759. }
  760.  
  761. ////////////////////////////////////////////////////////////////
  762. //
  763. // Step up
  764. //
  765. ////////////////////////////////////////////////////////////////
  766.  
  767. state CLIMB_32
  768. {
  769.    movetype stepup
  770.  
  771.    legs
  772.    {
  773.       climb_32 : default
  774.    }
  775.  
  776.    states
  777.    {
  778.     KILLED     : KILLED
  779.       STAND : ANIMDONE_LEGS
  780.    }
  781. }
  782.  
  783. state CLIMB_48
  784. {
  785.    movetype stepup
  786.  
  787.    legs
  788.    {
  789.       climb_48 : default
  790.    }
  791.  
  792.    states
  793.    {
  794.     KILLED     : KILLED
  795.       STAND : ANIMDONE_LEGS
  796.    }
  797. }
  798.  
  799. state CLIMB_64
  800. {
  801.    movetype stepup
  802.  
  803.    legs
  804.    {
  805.       climb_64 : default
  806.    }
  807.  
  808.    states
  809.    {
  810.     KILLED     : KILLED
  811.       STAND : ANIMDONE_LEGS
  812.    }
  813. }
  814.  
  815. //////////
  816. //
  817. // FROZEN ALICE
  818. //
  819. //////////
  820. state FROZEN
  821. {
  822.    movetype absolute
  823.    camera bulletcam 0 0 0 1 damped animate waterice
  824.  
  825.    states
  826.    {
  827.     STAND : !FROZEN
  828.    }
  829. }
  830.  
  831. /////
  832. //
  833. // GRASSHOPPER TEA
  834. //
  835. /////
  836. state GRASSHOPPER
  837. {
  838.    movetype absolute
  839.    camera bulletcam 30 -40 10 0.1 damped radial target 0 0 10
  840.  
  841.    legs
  842.    {
  843.     grasshoppertea : default
  844.    }
  845.  
  846.    states
  847.    {
  848.     STAND : ANIMDONE_LEGS
  849.    }
  850. }
  851.  
  852. state USE
  853. {
  854.     torso
  855.     {
  856.         use : default
  857.     }
  858.  
  859.     states
  860.     {
  861.         STAND : ANIMDONE_TORSO
  862.     }
  863. }
  864.  
  865. ////////////////////////////////////////////////////////////////
  866. //
  867. // Standing at a UseObject
  868. //
  869. ////////////////////////////////////////////////////////////////
  870.  
  871. state USE_USEOBJECT
  872. {
  873.    movetype useobject
  874.  
  875.    legs
  876.    {
  877.       //
  878.       // there is no anim, since this state will be exited as soon as
  879.       // we figure out which state to go into
  880.       //
  881.       none        : default
  882.    }
  883.  
  884.    states
  885.    {
  886.       // we don't really expect to go back to stand, but this is here so we don't
  887.       // get stuck in this state
  888.       STAND       : default
  889.    }
  890. }
  891.  
  892. state USELEVER
  893. {
  894. movetype absolute
  895. camera side_left
  896.  
  897.     legs
  898.     {
  899.         use_lever : default
  900.     }
  901.  
  902.     entrycommands
  903.     {
  904.         hideweapon 1
  905.         startuseobject
  906.     }
  907.  
  908.     exitcommands
  909.     {
  910.         hideweapon 0
  911.         finishuseobject
  912.     }
  913.  
  914.     states
  915.     {
  916.         STAND : ANIMDONE_LEGS
  917.     }
  918. }
  919.  
  920. state USELEVER_BACKWARDS
  921. {
  922. movetype absolute
  923.  
  924.     legs
  925.     {
  926.         use_lever : default
  927.     }
  928.  
  929.     entrycommands
  930.     {
  931.         hideweapon 1
  932.         startuseobject
  933.     }
  934.  
  935.     exitcommands
  936.     {
  937.         hideweapon 0
  938.         finishuseobject
  939.     }
  940.  
  941.     states
  942.     {
  943.         STAND : ANIMDONE_LEGS
  944.     }
  945. }
  946.